package com.gump.mall.demo.pagehelper;

import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;

import java.util.List;

/**
 * @auther zzc
 * 仅通过PageInfo+PageHelper两个类，就可以完成分页功能
 * @date 2020/11/3 10:48
 */
public class Demo {


    //在集合查询前使用PageHelper.startPage(pageNum,pageSize)，并且中间不能穿插执行其他SQL
    public PageInfo<ResponseEntityDto> page1(RequestParamDto param) {
        PageHelper.startPage(param.getPageNum(), param.getPageSize());
        List<ResoinseEntityDto> list = Mapper.selectManySelective(param);
        PageInfo<ResponseEntityDto> pageInfo = (PageInfo<ResponseEntityDto>)list;
        return pageInfo;
    }

    public PageInfo<ResponseEntityDto> page(RequestParamDto param) {
        return PageHelper.startPage(param.getPageNum(), param.getPageSize())
                .doSelectPageInfo(() -> list(param));
    }
    public List<ResoinseEntityDto> list(RequestParamDto param) {
        return Mapper.selectManySelective(param);
    }

}
